home *** CD-ROM | disk | FTP | other *** search
/ Aminet 22 / Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso / Aminet / dev / misc / gms_e.lha / GMSDev / Source / E / Screens / FadingDemo.e < prev    next >
Text File  |  1997-09-15  |  2KB  |  72 lines

  1. /* Name:      Fade Demo
  2. ** Author:    Paul Manias
  3. ** Copyright: DreamWorld Productions (c) 1996-1997.  Freely distributable.
  4. */
  5.  
  6. MODULE 'dpkernel','gms/dpkernel','graphics/pictures','files/files'
  7. MODULE 'screens','system/register','system/modules','graphics/screens'
  8.  
  9. PROC main()
  10.  DEF screen=NIL:PTR TO screen, state=NIL:LONG, loadpic=NIL:PTR TO picture
  11.  DEF picfile:filename, scrmodule=NIL:PTR TO module
  12.  
  13.  picfile := [ ID_FILENAME, 'GMS:demos/data/PIC.Green']:filename
  14.  
  15.  IF dpkbase := OpenLibrary('GMS:libs/dpkernel.library',0)
  16.   SetUserPrefs(0)
  17.  
  18.   IF (scrmodule := Init([TAGS_MODULE,NIL,
  19.       MODA_NUMBER,    MOD_SCREENS,
  20.       MODA_TABLETYPE, JMP_AMIGAE,
  21.       TAGEND], NIL))
  22.  
  23.    scrbase := scrmodule.modbase
  24.  
  25.    IF (loadpic := Load(picfile,ID_PICTURE))
  26.     IF (screen := Init([TAGS_SCREEN,0,
  27.         GSA_MEMPTR1,  loadpic.data,
  28.         GSA_PICWIDTH, loadpic.width,
  29.         GSA_PICHEIGHT,loadpic.height,
  30.         GSA_PLANES,   loadpic.planes,
  31.         GSA_SCRMODE,  loadpic.scrmode,
  32.         GSA_SCRTYPE,  loadpic.scrtype,
  33.         TAGEND], NIL))
  34.  
  35.       Display(screen)
  36.       WaitTime(100)
  37.  
  38.       REPEAT
  39.         WaitVBL()
  40.         WaitVBL()
  41.         state := ColourToPalette(screen,state,2,0,32,loadpic.palette,$000000)
  42.       UNTIL (state = 0)
  43.  
  44.       WaitTime(60)
  45.  
  46.       REPEAT
  47.         WaitVBL()
  48.         WaitVBL()
  49.         state := PaletteToColour(screen,state,1,0,32,loadpic.palette,$FFFFFF)
  50.       UNTIL (state = 0)
  51.  
  52.       WaitTime(30)
  53.  
  54.       REPEAT
  55.         WaitVBL()
  56.         WaitVBL();
  57.         state := ColourMorph(screen,state,4,0,32,$FFFFFF,$000000);
  58.       UNTIL (state = 0)
  59.  
  60.       WaitTime(50)
  61.  
  62.     ENDIF
  63.    ENDIF
  64.   ENDIF
  65.  Free(loadpic)
  66.  Free(screen)
  67.  Free(scrmodule)
  68.  CloseDPK()
  69.  ENDIF
  70. ENDPROC
  71.  
  72.